// 导入路由相关的方法
// createRouter: 创建路由实例对象
// createWebHistory(): 指定路由模式, 页面访问地址中不带#的路由模式
// createWebHashHistory(): 指定路由模式, 页面访问地址中带#的路由模式
import {createRouter,createWebHashHistory} from 'vue-router';
// 导入页面组件
// import HomePage from '../pages/HomePage';
// import CatePage from '../pages/CatePage';
// import CartPage from '../pages/CartPage';
// import UcenterPage from '../pages/UcenterPage';
// import NotFound from '../pages/NotFound';
const HomePage=()=>import('../pages/HomePage');
const CatePage=()=>import('../pages/CatePage');
const CartPage=()=>import('../pages/CartPage');
const UcenterPage=()=>import('../pages/UcenterPage');
const NotFound=()=>import('../pages/NotFound');

// 配置路由规则
const routes=[
    // 路由重定向规则
    {
        path:'/',
        redirect:'/home'
    },
    {
        path:'/home',
        component:HomePage,
        meta:{
            title:'商城首页'
        }
    },
    {
        path:'/cate',
        component:CatePage,
        meta:{
            title:'商品分类'
        }
    },
    {
        path:'/cart',
        component:CartPage,
        meta:{
            title:'购物车'
        }
    },
    {
        path:'/ucenter',
        component:UcenterPage,
        meta:{
            title:'会员中心'
        }
    },
    // 404路由规则
    {
        path:'/:pathMatch(.*)',
        component:NotFound,
        meta:{
            title:'404'
        }
    }
];
// 创建路由实例对象
const router=createRouter({
    routes:routes,  // 引用路由规则
    history:createWebHashHistory(),     // 指定路由模式
});

// 全局前置导航守卫
// to:系统参数, 表示即将访问的页面路径
// from: 系统参数, 表示即将离开的页面路径
// next: 路由跳转方法, 必须手动调用, 否则所有的页面将无法正常访问
router.beforeEach((to,from,next)=>{
    console.log(to,from);
    next();
    // 动态设置页面标题?
    if(to.meta.title){
        document.title=to.meta.title;
    }
});


// 导出路由实例对象router
export default router;